package com.cskaoyan.javase._2inner._3local._3notice;


/**
 * 使用局部内部类的注意事项：
 * 如果在局部内部类中访问，装有局部内部类方法中的局部变量，那么该局部变量要么直接用final修饰
 * 要么就不能修改它（确保它就是一个常量）
 *
 * 这是什么原因呢?
 *
 * @since 09:33
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {

    }
}

class EnclosedClazz {
    public void test() {
        // 外围类成员方法中的局部变量num
        int num = 10;
        // 局部内部类
        class Inner {
            // 局部内部类的成员方法
            public void testInner() {
                System.out.println(num);
                // Variable 'num' is accessed from within inner class, needs to be final or effectively final
                // num = 20;
            }
        }
    }
}